A cloud platform (i.e., a computing platform for cloud computing) may be employed by many users to store, manage, and process data using a shared network of remote servers. Users may develop applications on the cloud platform to handle the storage, management, and processing of data. In some cases, the cloud platform may utilize a multi-tenant database system. Users may access the cloud platform using various user devices (e.g., desktop computers, laptops, smartphones, tablets, or other computing systems, etc.).
In one example, the cloud platform may support customer relationship management (CRM) solutions. This may include support for sales, service, marketing, community, analytics, applications, and the Internet of Things. A user may utilize the cloud platform to help manage contacts of the user. For example, managing contacts of the user may include analyzing data, storing and preparing communications, and tracking opportunities and sales.
A data processing system may poll a datasource to retrieve new data from the datasource. In some cases, the system is configured to poll the datasource periodically to retrieve new data from the datasource in batches. In other cases, the system is configured to retrieve new data as it is generated at the datasource. Systems that periodically poll the datasource and retrieve data in batches may result in retrieval latencies that are unacceptable for certain applications. Systems that retrieve data as it is generated at the datasource may be unreliable, which may result in a failure to retrieve some data from the datasource.